home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 027a / clipio.zip / README.DOC < prev    next >
Text File  |  1990-06-26  |  13KB  |  397 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.                            CLIPI/O v. 2.01 (demo version)
  8.  
  9.           !!!Product order form at the end of this file!!!
  10.  
  11.           !!!You cannot link the ClipI/O library with TLINK!!! (sorry)
  12.  
  13.           INTRODUCING: CLIPI/O!
  14.           =====================
  15.           ClipI/O was designed for one purpose: to greatly enhance
  16.           CLIPPER's terminal I/O capabilities by providing complete mouse
  17.           support, fast and flexible video support, additional keyboard
  18.           support, and mouse-compatible menus and browsers.
  19.  
  20.  
  21.           ClipI/O is:
  22.           ===========
  23.  
  24.           Modular
  25.           -------
  26.           ClipI/O is modular at the function level.   Generally, unless you
  27.           specifically call a function, it will not be linked into your
  28.           application.    This results in more efficient use of memory.
  29.           Some of the higher level functions, such as MENUEDIT(), call
  30.           other functions within the library.  Consequently, calling these
  31.           high-level functions will result in other functions, not
  32.           explicitly called by you, being linked into your application.
  33.  
  34.           Efficient
  35.           ---------
  36.           All of the ClipI/O functions, except for those in the menu group
  37.           which are written in C, are written in Assembler.  As a result
  38.           ClipI/O provides maximum speed with minimum memory requirements.
  39.           ClipI/O's VPUTSTRC() is 25% faster than CLIPPER's @ SAY.
  40.           ClipI/O's VGETSCRN()/VPUTSCRN() pair is 4% faster than CLIPPER's
  41.           SAVESCREEN()/RESTSCREEN().
  42.  
  43.           Accessible
  44.           ----------
  45.           All of the ClipI/O functions, except for those in the menu group,
  46.           can be called from C or Assembler routines.  See Appendix B for
  47.           more information.
  48.  
  49.  
  50.           BLAKBOOK: A DEMONSTRATION OF CLIPI/O'S FEATURES
  51.           ===============================================
  52.           The batch file, DEMO.BAT will compile, link, and execute
  53.           Blakbook, a demonstration of ClipI/O's features.  For DEMO.BAT to
  54.           work properly, three things are necessary:
  55.  
  56.               1) CLIPPER.EXE must be accessible, ie either pathed-to or in
  57.                  the same directory as DEMO.BAT and the rest of the ClipI/O
  58.                  files.
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.               2) CLIPPER.LIB and EXTEND.LIB must be available, ie either
  74.                  pathed-to or in the same directory as DEMO.BAT and the
  75.                  rest of the ClipI/O files.
  76.               3) LINK.EXE, the DOS linker, must be available, ie either
  77.                  pathed-to or in the same directory as DEMO.BAT and the
  78.                  rest of the ClipI/O files. OR, you can link using PLINK86.
  79.                  See DEMO.BAT REMark.
  80.  
  81.           If all of these conditions are met, simply type "DEMO" <Enter>.
  82.  
  83.  
  84.           Clipio.arc should contain the following files:
  85.           ==============================================
  86.  
  87.           File Name       Description
  88.           -----------------------------------------------------------------
  89.           BLAKBOOK MEM    Memory file for demo program, Blakbook
  90.           BLAKBOOK PRG    Main program file for Blakbook
  91.           BLAKDIAL PRG    Dialer program file for Blakbook
  92.           BLAKGLOB PRG    Global functions program file used in Blakbook
  93.           BLAKMEMB PRG    Members program file used in Blakbook
  94.           BLAKPRNT PRG    Print routines program file used in Blakbook
  95.           BLAKSYST PRG    System options file used in Blakbook
  96.           CLIPIO   LIB    Demo version of the ClipI/O library
  97.           CLIPIO   MAN    On-line version of ClipI/O manual
  98.           CLIPIO   OBJ    Object module that should be linked into the root
  99.           DEMO     BAT    Batch file that creates and runs Blakbook
  100.           FAMILIES DBF    Database file containing families for Blakbook
  101.           FAMILIES DBT    Memo file containing families' notes for Blakbook
  102.           FAMINAME NTX    Index file for Blakbook
  103.           FAMIUNIQ NTX    ""
  104.           MEMBANNI NTX    ""
  105.           MEMBBIRT NTX    ""
  106.           MEMBERS  DBF    Database file containing members for Blakbook
  107.           MEMBUNIQ NTX    Index file for Blakbook
  108.           README   DOC    This file
  109.           TOURGIDE MAN    Tour guide to Blakbook and ClipI/O's features
  110.  
  111.  
  112.           IMPORTANT INFORMATION NOT IN THE MANUAL
  113.           =======================================
  114.           * You cannot link with TLINK
  115.  
  116.           * CLIPI/O will not work with the windows driver of CLIPPER TOOLS
  117.             ONE, CTOOLD87.OBJ
  118.  
  119.  
  120.           LOG OF CHANGES FROM VERSION TO VERSION
  121.           =======================================
  122.  
  123.           1.01 Changes
  124.           ------------
  125.           MENU() now leaves the menu on the screen once it is done
  126.           executing, requiring a call to VPOPSCRN() by the program to
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.           remove it.  This allows you to leave the menu on the screen after
  140.           the user has made his selection to give a point of reference for
  141.           subsequent operations.
  142.  
  143.           MENUBAR() now also leaves the menubar and the pull-down menu on
  144.           the screen (if there was one), requiring a call to VPOPSCRN() and
  145.           an additional call if the choice selected was from a sub-menu.
  146.           You can easily tell if one or two calls to VPOPSCRN() are
  147.           required: if the value returned by MENUBAR() modulus (%) 10 = 0
  148.           then only one call is required, otherwise two calls are required.
  149.           For example:
  150.  
  151.               choice = MENUBAR(0, 0, 79, main, clients, '', employees, '')
  152.               do case
  153.               case choice = 11
  154.               .
  155.               .
  156.               .
  157.               endcase
  158.               VPOPSCRN()
  159.               if ((choice % 10) <> 0)
  160.                   VPOPSCRN()
  161.               endif
  162.  
  163.           LLIBCE.LIB:  Access to the C library was required in version 1.00
  164.           if a call was made to KEYPUSH(), KEYPUSHC(), or KEYPOP().  This
  165.           is no longer the case as version 1.01 of ClipI/O is self-
  166.           contained.
  167.  
  168.           1.01 Additions
  169.           --------------
  170.           MPUSHSTATE() and MPOPSTATE().  The current state of the mouse
  171.           driver can be saved and restored to and from a stack using these
  172.           functions.
  173.  
  174.           MENUDISP().  MENUDISP() takes the same parameters as MENUEDIT()
  175.           and simply displays the records in the window w/o waiting for
  176.           user input.  This allows you display records in a browse window
  177.           which always remains on the screen, but is not always active.
  178.           See the manual for more details.
  179.  
  180.           VPUSHSTATE() and VPOPSTATE().  The current state of the video
  181.           driver can be saved and restored to and from a stack using these
  182.           functions.
  183.  
  184.           1.02 Changes
  185.           ------------
  186.           The cursor.  The cursor now changes shape to reflect whether it
  187.           is demarking the current keyboard cursor position or the current
  188.           mouse cursor position.
  189.  
  190.           MENUBAR().  In previous versions, MENUBAR() did not properly
  191.           process buffered keystrokes.  Now, keystrokes can be sent to
  192.           MENUBAR().
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.           MENUEDIT().  Records marked for deletion now blink.  Also, a user
  207.           return value of 3 now causes MENUEDIT to redisplay the current
  208.           record.
  209.  
  210.           VPUTSTR() and VPUTSTRC().  These functions now return the column
  211.           position just past the end of the string written.
  212.  
  213.  
  214.           1.02 Additions
  215.           --------------
  216.           MPUSHCTRL() and MPOPCTRL().  The mouse control codes of a screen
  217.           region can be saved and restored to and from a stack using these
  218.           functions.
  219.  
  220.           VBOX().  This function will draw a box on the screen with an
  221.           optionally specified color attribute.
  222.  
  223.           VCLEAR().  This function will clear a screen region with an
  224.           optionally specified color attribute.
  225.  
  226.           1.03 Changes
  227.           ------------
  228.           PREPIO.COM is no longer necessary.  ClipI/O now installs and de-
  229.           installs its device drivers at run-time.
  230.  
  231.           MOUSEINIT(), MOUSEOFF(), and VDRIVEROFF() are no longer
  232.           necessary.  ClipI/O now handles initialization of the device
  233.           drivers automatically.
  234.  
  235.           The stacks for VPUSHSCRN(), VPUSHSTATE(), MPUSHSTATE(), and
  236.           MPUSHCTRL() are now dynamic
  237.  
  238.           MENU() now automatically highlights and capitalizes the first
  239.           unique character which can be pressed to select the item.  This
  240.           guarantees that every menu item can be selected with a single
  241.           key.
  242.  
  243.           MENUBAR() now automatically highlights and capitalizes the first
  244.           unique character which can be pressed to select the item.  This
  245.           guarantees that every menu item can be selected with a single
  246.           key.
  247.  
  248.           MENUBAR() now takes an additional parameter--initial current
  249.           item.
  250.  
  251.           MENUEDIT()
  252.               * is much faster
  253.               * has search progress display
  254.               * allows the user to abort searches
  255.               * passes additional parameters to the monitor function
  256.               * will optionally highlight the entire line
  257.               * records marked for deletion no longer blink
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.           MENUDISP() no longer exists.  MENUEDIT() can be used in its place
  272.           by passing a ninth, dummy parameters.
  273.  
  274.           1.03 Additions
  275.           --------------
  276.           KEYNEXT() returns the next key in the keyboard buffer without
  277.           removing it in the ClipI/O extended key format.
  278.  
  279.           KEYSETLAST() allows you to set the value returned by LASTKEY().
  280.  
  281.           MENUSETDEL() allows you to set a delay in seconds after which
  282.           MENUEDIT() will display a search progress message providing the
  283.           user with feedback and preventing simulated "lock-ups."
  284.  
  285.           MENUSETHI() allows you to select field or full-line highlighting
  286.           in MENUEDIT()
  287.  
  288.           MENUSETROW() allows you to specify the row at which the search
  289.           progress message is displayed or disable the message entirely.
  290.  
  291.           FLDDEC(), FLDLEN(), FLDNAME(), and FLDTYPE() allow you to query
  292.           the structure of a database without loading arrays with
  293.           AFIELDS().
  294.  
  295.           LRC() provides a longitudinal redundancy check byte for strings.
  296.  
  297.           NFLOCKED() and NRLOCKED() return the lock status of files and
  298.           records, respectively, without attempting a lock.
  299.  
  300.           REMOVE_THE() removes initial "the"s from strings for indexing and
  301.           seeking on company names.
  302.  
  303.           REPICTURE() restores embedded picture template characters to a
  304.           string from a picture.
  305.  
  306.           WILDCARD() performs wildcard string comparisons.
  307.  
  308.           UNPICTURE() removes embedded picture template characters from
  309.           strings.
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.           CLIPI/O PRODUCT ORDER FORM
  338.           ==========================
  339.           Please type or print.
  340.  
  341.  
  342.           _________________________________________________________________
  343.           Name
  344.  
  345.  
  346.           _________________________________________________________________
  347.           Company
  348.  
  349.  
  350.           _________________________________________________________________
  351.           Address                                         Apartment/Suite #
  352.  
  353.  
  354.           _________________________________________________________________
  355.           City                                              State     Zip
  356.  
  357.  
  358.           _________________________________________________________________
  359.           Phone Number
  360.  
  361.  
  362.           _________________________________________________________________
  363.           Signature                                 Date
  364.  
  365.           Please print out and send with a $59.95 check or money order to:
  366.  
  367.                      OpinSoft
  368.                      207 East 43rd Street
  369.                      Austin, TX 78751
  370.  
  371.           You will recieve:
  372.               1) The latest version of ClipI/O
  373.               2) A printed, bound manual
  374.               3) Automatic notification of updates
  375.               4) The right to incorporate/modify/distribute the source code
  376.                  for Blakbook
  377.  
  378.           For rush service, add $5.00 for connect charges and send e-mail
  379.           requesting rush service to CID: 71631,541.  We will send you
  380.           ClipI/O via e-mail immediately (that means BEFORE we receive your
  381.           check; we trust you).
  382.  
  383.  
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.